Position-based automatic configuration of portable device

ABSTRACT

A method for automatically configuring a portable device comprises determining a position of the portable device and automatically configuring the portable device based on the determined position.

BACKGROUND OF THE INVENTION

The present invention relates generally to the field of electronic devices. More specifically, the invention relates to automatic configuration of portable devices.

Many devices are typically configured to use or access peripheral devices such as printers and network connections. For example, in an office environment with numerous printers, an individual's desktop computer may be configured to use a particular printer as a default. The selection of the printer is typically a manual process which allows the user to change the selection as desired.

A user with a portable device, such as a laptop computer, may carry the device to numerous locations. For example, a user working for a company with multiple offices may be required to travel to the various offices on a regular basis. Each time the user changes his location, he must manually configure the portable device to select appropriate peripherals.

It would be desirable to provide for automatic configuration of the portable device in such situations.

SUMMARY OF THE INVENTION

One aspect of the invention relates to a method for configuring a portable device. The method comprises determining a position of the portable device and automatically configuring the portable device based on the determined position.

In one embodiment, the determining a position is based on a global positioning system (GPS) determination. In another embodiment, the determining a position is based on a determination using a cellular network.

In a particular embodiment, the configuring includes selecting one or more peripherals for use by the portable device. The one or more peripherals may include a printer or a network connection.

In one embodiment, the configuring the portable device includes configuring access to resources available at the current position of the portable device. Configuring access to resources may include one of the following: selecting a mode of network access, configuring access rights to one or more files, and disabling one or more ports or peripherals.

In one embodiment, the configuring the portable device includes selecting a profile based on the position from one or more profiles stored on the portable device.

In one embodiment, the determining a position of the portable device includes determining whether the position has changed from an earlier position. The determining whether the position has changed from an earlier position may be determined upon startup of the device. Alternatively, the determining whether the position has changed from an earlier position may be determined substantially continuously.

In one embodiment, the position is one of a plurality of areas.

In another aspect of the invention, a portable device comprises a location module adapted to determine a current position of the portable device and a processor adapted to automatically configure the portable device based on the current position.

In another aspect, the invention includes a computer program product, embodied on a computer-readable medium, for configuring a portable device. The computer program product comprises computer code for determining a position of the portable device and computer code for automatically configuring the portable device based on the determined position.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a system with a portable device according to an embodiment of the present invention;

FIG. 2 is a block diagram of the portable device of FIG. 1 according to an embodiment of the present invention;

FIG. 3A is a flow chart illustrating a method for configuring a portable device according to an embodiment of the present invention;

FIG. 3B is a flow chart illustrating a method for configuring a portable device according to another embodiment of the present invention;

FIG. 4A is a flow chart illustrating a method for configuring a portable device according to another embodiment of the present invention; and

FIG. 4B is a flow chart illustrating a method for configuring a portable device according to another embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring to FIG. 1, a system with a portable device 100 according to an embodiment of the present invention is exemplarily illustrated. The system 10 represents an environment in which a portable device 100 may operate. The portable device 100 may be one of a number of portable devices, such as laptop computers, personal digital assistants (PDAs) or portable phones, for example. An exemplary portable device 100 is described below with reference to FIG. 2.

Referring again to FIG. 1, the system 10 includes a plurality of areas 111-114 within and across which the portable device 100 can move. Each area 111-114 may represent a region of the country, a state, a city, a building, a floor within a building, a zone, an office, a cubicle or the like. Further, although the areas 111-114 illustrated in FIG. 1 are shown as adjacent to one another, in certain embodiments, the areas may be disjointed. For example, one area may be a single floor on one building in City A, while the next area may be a building in City B.

The portable device 100 is illustrated in FIG. 1 as moving from Area 1 (111) to Area 3 (113). In one embodiment, the portable device 100 is shut down in Area 1 (111), moved to Area 3 (113) and restarted. In another embodiment, the movement of the portable device 100 occurs with the device operating continuously.

Each area 111-114 is provided with one or more peripheral devices. In the example illustrated in FIG. 1, each area 111-114 is provided with a printer 121-124 and a network connection 131-134. As will be appreciated by those skilled in the art, different areas may be equipped with different set of peripherals. For example, areas may be provided with any number of printers or multiple network connections. An area may include an Ethernet connection for a local area network (LAN) in addition to a wireless local area network connection. In addition to printers and network connections, other peripherals may also be provided.

Referring now to FIG. 2, an embodiment of a portable device 100 is illustrated. As noted above, the portable device 100 may be a laptop computer, a PDA, a portable phone or any other portable device. For purposes of simplicity, the portable device 100 is only shown with certain components. Those skilled in the art will appreciate that such a portable device may include numerous other components and may lack certain illustrated components.

The portable device 100 includes a central processing unit (CPU) 101 adapted to control the overall operation of the portable device 100. The CPU 101 may be configured with an operating system and a variety of other software components. The portable device 100 is also provided with a memory device 102, which may take the form of a hard disk, for example. In some embodiments, either in addition to or in place of the memory device 102, the portable device 100 may include a removable memory device, such as a flash drive, CD-ROM, CD-R, CD-R/W or any other computer-readable medium, for example. The removable memory device may include either data or various computer program products with computer code. Additionally, the portable device 100 includes a random access memory (RAM) 103.

The portable device 100 also includes a communication module 104 to allow the portable device 100 to communicate with other components, for example, in a network such as a local area network (LAN). The communication module 104 may be adapted to communicate through a variety of protocols including, for example, wireless local area network (WLAN) or an Ethernet connection. Of course, numerous other communication protocols may be used.

The portable device 100 illustrated in FIG. 1 also includes a location module 105. The location module 105 is adapted to facilitate detection or determination of the location of the portable device 100. In one embodiment, the location module 105 is a global positioning system (GPS) module which uses GPS positioning to facilitate determination of the location. In another embodiment, the location module 105 is adapted to use a cellular network to determine its location. In this regard, the location module may be adapted to transmit and receive signals from a cellular network, allowing the cellular network to determine the position of the portable device 100 (e.g., through triangulation) and transmit the location to the portable device. Other methods of location determination will be apparent to those skilled in the art and are contemplated within the scope of the present invention.

Now, with reference to FIGS. 3A, 3B, 4A and 4B, various methods of automatically configuring the portable device 100 will be described. Each method may be implemented on the portable device 100 in either the CPU 101 or the RAM 103, for example. The method may be implemented as a computer program product on a computer-readable medium, such as a disk, for installation on a portable device.

Referring first to FIG. 3A, upon each startup of the portable device 100, the current location of the portable device 100 is determined (block 310). This may be achieved using a GPS determination by the location module 105 illustrated in FIG. 1, for example. In this regard, the location module 105 may determine the location as a set of coordinates. Alternatively, the location module 105 may translate the coordinates to a particular region of the country, a state, a city, a building, a floor within a building, a zone, an office, a cubicle or the like. For example, in one embodiment, the location module 105 may determine in which office of a multi-city company the portable device is currently located.

At block 312, it is determined whether the location of the portable device 100 has changed. In this regard, the current position may be compared to the position of the portable device 100 when it was previously shut down or at the previous startup. If the location has not changed, no changes are made, and the process terminates at block 318. On the other hand, if the location of the portable device is determined to have changed, the resources available to the portable device 100 at the current location are accessed (block 314). In this regard, the portable device 100 may perform a scan of the network to determine which peripherals are available at the current location. For example, the portable device 100 may scan and determine that multiple printers are available.

Next, at block 316, the portable device 316 is configured based on its current location. In this regard, configuration may includes a variety of operations and/or actions taken by the portable device 316. For example, configuration of the device may include selecting one or more peripherals for use by the portable device. Thus, the portable device may be configured to select one or more printers or network connections as being available for use. Further, the configuration of the portable device may include configuring access to resources, such as selecting one or more modes of accessing the network (e.g., wireless, LAN, etc.), configuring read/write/edit rights for one or more files or folders available on the network, or disabling one or more ports or peripherals.

In this regard, the available resources may be analyzed in order to select specific resources. For example, a particular printer may be selected as the default printer. The selection may be subject to certain restrictions or preferences included in the portable device 100. For example, the portable device 100 may include a preference for printers which can print on two sides, or the portable device 100 may include a restriction to not select a color printer. Taking these restrictions and preferences into account, one of the available printers may be selected as the default. In addition to the selection of the default printer, the portable device 100 may be configured for other peripherals as well.

Referring now to FIG. 3B, another embodiment of a method of automatically configuring the portable device is illustrated. The method illustrated in FIG. 3B is similar to that of FIG. 3A in many respects but varies in the selection of the resources. Again, upon each startup of the portable device 100, the current location of the portable device 100 is determined (block 320). At block 322, it is determined whether the location of the portable device 100 has changed. If the location has not changed, no changes are made, and the process terminates at block 328.

On the other hand, if the location of the portable device 100 is determined to have changed, the resources available to the portable device 100 at the current location are accessed (block 324). In this regard, rather than performing a scan, the portable device 100 accesses one of a plurality of profiles stored in, for example, the memory device 102. A separate profile may be provided for each location, such as each office of a multi-city company. The profile corresponding to the current location is accessed, and the selections identified in the profile are selected for configuration of the portable device. At block 326, the portable device 100 is accordingly configured.

Rather than determining the location of the portable device 100 at startup, in some embodiments, the location is monitored on a regular basis during the operation of the portable device. In one embodiment, the location is monitored substantially continuously (e.g., 1 Hz). In this regard, location changes during operation of the portable device can be used to reconfigure the portable device. For example, a user moving from his office in a building to a conference room may desire to have the default printer changed to one that is closer to the conference room. FIGS. 4A and 4B illustrate two methods according to embodiments of the present invention in which the location of the portable device is monitored on a regular basis, and the portable device is reconfigured when the location is determined to have changed.

With reference to FIG. 4A, the current location of the portable device 100 is determined (block 410). At block 412, it is determined whether the location of the portable device 100 has changed. If the location has not changed, no changes are made, and the process returns to block 410 to continue monitoring the location of the portable device. On the other hand, On the other hand, if the location of the portable device is determined to have changed, the resources available to the portable device 100 at the current location are accessed (block 414). In this regard, the portable device 100 may perform a scan of the network to determine which peripherals are available at the current location. Next, at block 416, the portable device 316 is configured based on its current location, and the process returns to block 410 to continue monitoring the location of the portable device.

With reference now to FIG. 4B, the current location of the portable device 100 is determined (block 420). At block 422, it is determined whether the location of the portable device 100 has changed. If the location has not changed, no changes are made, and the process returns to block 420 to continue monitoring the location of the portable device. On the other hand, if the location of the portable device 100 is determined to have changed, the resources available to the portable device 100 at the current location are accessed (block 424). In this regard, the portable device 100 accesses one of a plurality of profiles stored in, for example, the memory device 102. A separate profile may be provided for each location, such as each office of a multi-city company. The profile corresponding to the current location is accessed, and the selections identified in the profile are selected for configuration of the portable device. At block 426, the portable device 100 is accordingly configured, and the process returns to block 420 to continue monitoring the location of the portable device.

While particular embodiments of the present invention have been disclosed, it is to be understood that various different modifications and combinations are possible and are contemplated within the true spirit and scope of the appended claims. There is no intention, therefore, of limitations to the exact abstract and disclosure herein presented. 

What is claimed is:
 1. A method for configuring a portable device, comprising: determining a position of the portable device; and automatically configuring the portable device based on the determined position.
 2. The method of claim 1, wherein the determining a position is based on a global positioning system (GPS) determination.
 3. The method of claim 1, wherein the determining a position is based on a determination using a cellular network.
 4. The method of claim 1, wherein configuring the portable device includes selecting one or more peripherals for use by the portable device.
 5. The method of claim 4, wherein the one or more peripherals includes a printer or a network connection.
 6. The method of claim 1, wherein the configuring the portable device includes configuring access to resources available at the current position of the portable device.
 7. The method of claim 6, wherein configuring access to resources includes at least one of the following: selecting a mode of network access, configuring access rights to one or more files, and disabling one or more ports or peripherals.
 8. The method of claim 1, wherein the configuring the portable device includes selecting a profile based on the position from one or more profiles stored on the portable device.
 9. The method of claim 1, wherein the determining a position of the portable device includes determining whether the position has changed from an earlier position.
 10. The method of claim 9, wherein the determining whether the position has changed from an earlier position is determined upon startup of the device.
 11. The method of claim 9, wherein the determining whether the position has changed from an earlier position is determined substantially continuously.
 12. The method of claim 1, wherein the position is one of a plurality of areas.
 13. A portable device, comprising: a location module adapted to determine a current position of the portable device; and a processor adapted to automatically configure the portable device based on the current position.
 14. The device of claim 13, wherein the location module is adapted to use the global positioning system (GPS).
 15. The device of claim 13, wherein the location module is adapted to use a cellular network to determine a current position.
 16. The device of claim 13, wherein the processor is adapted to automatically configure the portable device by selecting one or more peripherals for use by the portable device.
 17. The device of claim 16, wherein the one or more peripherals includes a printer or a network connection.
 18. The device of claim 13, wherein the processor is adapted to configure the portable device by configuring access to resources available at the current position of the portable device.
 19. The device of claim 18, wherein the processor is adapted to configure access to resources by at least one of the following: selecting a mode of network access, configuring access rights to one or more files, and disabling one or more ports or peripherals.
 20. The device of claim 13, wherein the processor is adapted to configure the portable device by selecting a profile based on the position from one or more profiles stored on the portable device.
 21. The device of claim 13, wherein the location module is adapted to determine whether the position has changed from an earlier position.
 22. The device of claim 21, wherein the location module determines whether the position has changed from an earlier position upon startup of the device.
 23. The device of claim 21, wherein the location module determines whether the position has changed from an earlier position substantially continuously.
 24. The device of claim 13, wherein the position is one of a plurality of areas.
 25. A computer program product, embodied on a computer-readable medium, for configuring a portable device, comprising: computer code for determining a position of the portable device; and computer code for automatically configuring the portable device based on the determined position.
 26. The computer program product of claim 25, wherein the computer code for determining a position uses a global positioning system (GPS) determination.
 27. The computer program product of claim 25, wherein the computer code for determining a position uses a cellular network to determine the position.
 28. The computer program product of claim 25, wherein the computer code for configuring includes computer code for selecting one or more peripherals for use by the portable device.
 29. The computer program product of claim 28, wherein the one or more peripherals includes a printer or a network connection.
 30. The computer program product of claim 25, wherein the computer code for configuring the portable device includes computer code for configuring access to resources available at the current position of the portable device.
 31. The computer program product of claim 30, wherein the computer code for configuring access to resources includes computer code for at least one of the following: selecting a mode of network access, configuring access rights to one or more files, and disabling one or more ports or peripherals.
 32. The computer program product of claim 25, wherein the computer code for configuring the portable device includes computer code for selecting a profile based on the position from one or more profiles stored on the portable device.
 33. The computer program product of claim 25, wherein the computer code for determining a position of the portable device includes computer code for determining whether the position has changed from an earlier position.
 34. The computer program product of claim 33, wherein the computer code for determining whether the position has changed from an earlier position is adapted to determine upon startup of the device.
 35. The computer program product of claim 33, wherein the computer code for determining whether the position has changed from an earlier position is adapted to determine substantially continuously.
 36. The computer program product of claim 25, wherein the position is one of a plurality of areas 